package types

type ProductionListReq struct {
	StartDate string `json:"startDate,optional" validate:"omitempty,checkDate"`
	EndDate   string `json:"endDate,optional" validate:"omitempty,checkDate"`
}

type ProductionListResp struct {
	List []*ProductionList `json:"list"`
}
type ProductionList struct {
	Code            string `json:"code"`              // 编号
	ID              int64  `json:"id"`                // ID
	Name            string `json:"name"`              // 名称
	ProduceDate     string `json:"produce_date"`      // 生产日期
	TotalTypesCount int64  `json:"total_types_count"` // 种类数量
}

type ProductionDetailResp struct {
	List []*ProductionDetailList `json:"list"`
}

type ProductionDetailList struct {
	CreatedAt              int64   `json:"created_at"`        // 创建时间
	ProductImageURL        string  `json:"product_image_url"` // 图片名称
	ProductionPlanDetailID int64   `json:"production_plan_detail_id"`
	SortedWeight           float64 `json:"sorted_weight"` // 已分拣重量
	SpuID                  int64   `json:"spu_id"`        // 商品ID
	SpuName                string  `json:"spu_name"`      // 商品名
	UnitName               string  `json:"unit_name"`     // 单位
	Weight                 float64 `json:"weight"`        // 需求生产数量
}

type ProductionStoreSortingOneReq struct {
	ProductionPlanDetailID int64   `json:"production_plan_detail_id"` // 生产计划明细ID
	SpuID                  int64   `json:"spu_id"`                    // 商品ID
	Weight                 float64 `json:"weight"`                    // 重量
}

type ProductionStoreSortingFinishReq struct {
	ProductionPlanDetailID int64 `json:"production_plan_detail_id"` // 生产计划明细ID
	SpuID                  int64 `json:"spu_id"`                    // 商品ID
}

type ProductionPlanSortingDetailResp struct {
	List               []*ProductionPlanSortingDetailList `json:"list"`
	PackageCount       int64                              `json:"package_count"`        // 包裹个数
	ProductionImageURL string                             `json:"production_image_url"` // 商品图片
	ProductionPlanName string                             `json:"production_plan_name"` // 生产计划名称
	SpuName            string                             `json:"spu_name"`             // 商品名称
	TotalWeight        float64                            `json:"total_weight"`         // 已分拣重量
}

type ProductionPlanSortingDetailList struct {
	CreatedAt             int64   `json:"created_at"`              // 分拣时间
	Operator              string  `json:"operator"`                // 操作人
	ProductionBatchNumber string  `json:"production_batch_number"` // 生产批号
	Weight                float64 `json:"weight"`                  // 重量
}

type ProductionPlanLabelResp struct {
	CategoryName          string  `json:"category_name"`           // 商品分类
	Deviation             float64 `json:"deviation,omitempty"`     // 误差值，单位g（例如20即为，±20g）
	ProduceDate           string  `json:"produce_date"`            // 生产日期
	ProductionBatchNumber string  `json:"production_batch_number"` // 生产批号
	SpuName               string  `json:"spu_name"`                // 商品名称
	UnitName              string  `json:"unit_name"`               // 单位
	Weight                float64 `json:"weight"`                  //重量
}
